package com.techsoul.module.tms.pojo.entity;


import com.baomidou.mybatisplus.annotation.TableName;
import com.techsoul.common.core.pojo.entity.DataEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.util.Date;

/**
 * FreightVehicleDistribution
 * 运单
 * @author zhaowei
 * @since 2021-08-24
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("t_fo_freight_vehicle_distribution")
public class FreightVehicleDistribution extends DataEntity {
    @ApiModelProperty(value = "运单号")
    private String waybillNo;

    @ApiModelProperty("轿运装车类型")
    private String vehicleLoadType;
    @ApiModelProperty("排放")
    private String paiFang;
    @ApiModelProperty("马力")
    private String enginePower;
    private String vinNo;
    private String pickUpWarehouseNo;
    private String dropOffWarehouseNo;
    private String chassisCertNumber;
    private String orderSource;
    private String engineModel;

    private String engineNo;

    private String certificatesNo;

    private String manufactory;

    private String vehicleBrand;

    private String vehicleName;

    private String vehicleModel;

    private Date certificatesDate;

    @ApiModelProperty(value = "派单编号")
    private String assignedId;

    @ApiModelProperty(value = "物流计划编号")
    private String purchaseOrderId;

    @ApiModelProperty(value = "司机姓名")
    private String driverName;

    @ApiModelProperty(value = "司机手机号")
    private String driverMobile;
    @ApiModelProperty(value = "燃料类型")
    private String vehicleFueType;
    @ApiModelProperty(value = "是否抢单")
    private Boolean bidden;

    @ApiModelProperty(value = "是否是自有司机")
    private Boolean selfDriver;

    @ApiModelProperty(value = "运输车牌号")
    private String truckNo;

    @ApiModelProperty(value = "货物名称")
    private String materialName;

    @ApiModelProperty(value = "初期预估重量")
    private BigDecimal expectQuantity;

    @ApiModelProperty(value = "提货毛重")
    private BigDecimal pickupGrossQuantity;

    @ApiModelProperty(value = "提货重量")
    private BigDecimal pickupQuantity;

    @ApiModelProperty(value = "交货毛重")
    private BigDecimal deliveryGrossQuantity;

    @ApiModelProperty(value = "交货重量")
    private BigDecimal deliveryQuantity;

    @ApiModelProperty(value = "司机交货重量")
    private BigDecimal driverUnloadQuantity;

    @ApiModelProperty(value = "提货与交货磅差")
    private BigDecimal differQuantity;

    @ApiModelProperty(value = "体积")
    private BigDecimal volume;

    @ApiModelProperty(value = "实际提货时间")
    private Date actualPickupTime;

    @ApiModelProperty(value = "要求提货时间")
    private Date requirePickupTime;

    @ApiModelProperty(value = "实际交货时间")
    private Date actualDeliveryTime;

    @ApiModelProperty(value = "司机交货时间")
    private Date driverDeliveryTime;

    @ApiModelProperty(value = "要求交货时间")
    private Date requireDeliveryTime;

    @ApiModelProperty(value = "司机到达矿山图片地址")
    private String arriveMineImageUrl;

    @ApiModelProperty(value = "取货过磅单单号")
    private String pickupWeighNo;

    @ApiModelProperty(value = "取货过磅单图片地址")
    private String pickupWeighDocumentUrl;

    @ApiModelProperty(value = "交货过磅单单号")
    private String deliveryWeighNo;

    @ApiModelProperty(value = "交货过磅单图片地址")
    private String deliveryWeighDocumentUrl;

    @ApiModelProperty(value = "运单里程")
    private BigDecimal miles;

    @ApiModelProperty(value = "是否按时交货")
    private Boolean punctualDelivery;

    @ApiModelProperty(value = "重量单位")
    private String weightMeasUnit;

    @ApiModelProperty(value = "体积单位")
    private String volumeMeasUnit;

    @ApiModelProperty(value = "提货地址")
    private String pickupAddress;

    @ApiModelProperty(value = "交货地址")
    private String deliveryAddress;

    @ApiModelProperty(value = "运单运输状态 参考枚举：FreightVehicleDistributionStatusEnum")

    private String status;

    @ApiModelProperty(value = "交易端结算单对账单号")

    private String tradeAccountStatementNo;

    @ApiModelProperty(value = "交易端结算单对账状态")

    private String tradeAccountCheckStatus;

    @ApiModelProperty(value = "交易端物流单对账单号")

    private String tradeTransportStatementNo;

    @ApiModelProperty(value = "交易端物流单对账状态")

    private String tradeTransportCheckStatus;

    @ApiModelProperty(value = "是否申请终止,空或false为否,true为是,申请中运单不可操作")

    private Boolean isApplyEnd;


    private BigDecimal distributionNo;

    /**
     * ref t_fo_freight_vehicle_dispatch
     */
    private String dispatchId;


    private String orderSeqId;


    private String distributorSite;

    private String dispatchNo;

    private String freightOrderNo;

    private String freightOrderLineNo;


    private String vehicleNo;

    private String site;

    private String cargoFreightNo;

    private String cargoFreightName;
    private String cargoFreightType;
    private BigDecimal quantity;

    private String loadUnitNo;

    private BigDecimal weight;

    private BigDecimal feeSum;

    private Date backOrderDate;
    private BigDecimal paymentAmount;

    private BigDecimal paymentUnit;

    private BigDecimal deliverQuantity;

    private Date deliverTime;

    private BigDecimal breakQuantity;

    private String measUnitNo;

    private String causeNo;

    private String backOrderDesc;

    private String serviceRemark;

    private String delayDays;

    private String isTransfered;

    private BigDecimal leg;

    private BigDecimal accountPayable;

    private BigDecimal version;

    private String autoDispatchFlag;
    private String deptOrderNo;

    private String driver;

    private String carrierName;

    private String vehicleId;

    private String destination;
    private String consigneeName;

    private String custName;

    private String departmentNo;

    private Date startOffTime;

    private String isFinalDestination;
    private String transitFrSite;

    private String dispatchPlanNo;

    private Date executeDate;
    private String procDepartDesc;

    private String recDepartDesc;

    private String consigeeContactType;

    private String consigeeContactNo;
    private String carrierSite;


    private String isPunctualBack;
    private String isPunctualDelivery;

    private BigDecimal palletQty;

    private BigDecimal accountReceivable;

    private String dispatcher;
    private Date backOrderEstDate;
    private BigDecimal amountExpenseUnitPrice;

    private String chargeAdjustType;

    private String routeDistanceType;

    private String arAddedYn;

    private String serviceUpdateUserId;

    private String podId;

    private String settleBasedOn;

    private Date serviceUpdateDate;

    private String carrierSettleBasedOn;

    private String distributorDeptSite;

    private String warehouseInboundReciptNo;

    private BigDecimal packQty;

    private String shipByPackOrqty;

    private String custSettledBasedon;
    private String cargoFreightSpec;
    private BigDecimal apOtherCharges;

    private String indemnifyYn;


    private String ticketNo;

    private String sourceOrderlineId;

    private String processedYn;

    private String originCustNo;

    private String shipperName;
    private String processedRtYn;

    private String processedRtUser;

    private Date processedRtTm;

    private String podYn;
    private BigDecimal transitExpense;

    private BigDecimal carrierConfirmedTransitExpense;
    private String processedRtRemark;

    private String isFirstdispatchYn;
    private String shipmentLocation;

    private String deliveryAddr;

    private String carrierNo;
    private BigDecimal amountTransferUnitPrice;
    private BigDecimal amountTransferPrice;
    private String transferSettlebasedOn;

    private BigDecimal orderUnitPrice;

    private Date estDeliveryDate;

    private String podRemark;

    private String textMsgYn;
    private String departExcptImg;

    private String podExcptImg;

    private String containerSealNo;

    private String containerType;

    private String containerNo;

    private String updateFlag;

    private String dengji;

    private String chorderNo;

    private String qtyModifyOrderLineYn;

}
